{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Using TensorFlow backend.\n"
     ]
    }
   ],
   "source": [
    "# 最简单的模型，只用一个节点\n",
    "\n",
    "import os\n",
    "# os.environ['CUDA_VISIBLE_DEVICES'] = '-1'  # 不使用GPU\n",
    "\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "from keras.models import Sequential\n",
    "from keras.layers import Dense\n",
    "from keras.models import load_model\n",
    "from keras.utils import to_categorical\n",
    "from keras.layers.core import Dropout\n",
    "\n",
    "import time\n",
    "import matplotlib.pyplot as plt\n",
    "import tensorflow as tf\n",
    "from keras import backend as K\n",
    "# import icecream.ic as ic"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "读入数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [],
   "source": [
    "start = time.time()\n",
    "\n",
    "\n",
    "train = pd.read_csv('train2.csv')\n",
    "X_train = train.iloc[:, 0:2].values\n",
    "Y_train = train.iloc[:, 2].values\n",
    "\n",
    "test = pd.read_csv('test2.csv')\n",
    "X_test = test.iloc[:, 0:2].values\n",
    "Y_test = test.iloc[:, 2].values"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x19a69752988>"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 432x288 with 0 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX4AAADxCAYAAADMS9xFAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nOzdd3xUxdrA8d9sTTaNNDqhd6QTEOkdRRFQROGKchEV+xXFwlWviq+9i4iKIKIiimIDREGRJr1jBEJLqKGlbJJt8/6xIWRJIG13T3Yz389nP+/ds2fPPPtinp2dM/OMkFKiKIqiVB46rQNQFEVR/EslfkVRlEpGJX5FUZRKRiV+RVGUSkYlfkVRlEpGJX5FUZRKRiV+RVEUPxBCzBRCnBBC7LjE60II8bYQYq8QYpsQor2vYlGJX1EUxT9mAYMu8/pgoHHeYwLwvq8CUYlfURTFD6SUK4DTlzllKPCpdFsLVBFC1PBFLAZfXNRX4uLiZL169bQOQ1GUALBx48Y0KWV8ea7RSAhpLcF5R2EnkFPg0Awp5YxSNlcLOFzgeUresaOlvE6xAirx16tXjw0bNmgdhqIoAUAIcbC817ACd5bgvGcgR0rZsZzNiSKO+aSmTkAlfkVRFH8S+DVJpgB1CjyvDRzxRUNqjF9RFOUSdEBoCR5e8j1wa97sni7AOSml14d5QPX4FUVRLkkARm9dS4gvgF5AnBAiBXj6/OWllNOBn4Grgb24R5lu91LThajEryiKcgneHOqRUt5czOsSuMdLzV2WSvyKoiiX4M0ef0WiEr/iU9LlYtfXX3Nm/35qtG9Pw/79tQ5JUUrMzzd3/SYYP5NSQUgpmTd8OMm//oozNxe92UzXRx6h19NPax2aopRIsPb41ayeAHPu8GFWTJ3K7888w8ldu7QO57JS160j+ddfsWdl4XI4sGdl8efUqeSmp2sdmqKUiJ9n9fiN6vEHkDPJyXzQvj32rCyky8XqV1/l1t9+o3bnzlqHVqTs06fR6fUex3QGAznnzmGOjNQoKkUpOdXjVzT35wsvkJuRgcvhQLpc2LOyWProo1qHdUk1O3TAPVHBTeh0hFerRkTNmhpGpSilYyjBI9CoxB9Ask+fBpfL41juuXMaRVO8sKpV+dfSpVSpVw+9yUT1tm0Zu3x5/q8AKSXWU6dw2u0aR6ooRTvf4y/uEWgC8cuq0mo1ahT7lizBbnWXjTJaLLS66SaNo7q82p0788D+/YWOpyUlMad/f7KOHwchGDJjBm1vvVWDCBXl0tSsHkVzLUeOxHryJCumTsVlt9P+jju4avJkrcMqk7mDBpGekgJ5Q0E/3XUXNTt0oGrLlhpHpigXnL+5G2xU4g8wne65h073+GVxn8/YMjM5d/hwftIH0On1HN24USV+pUJRN3d9QAjxkBBipxBihxDiCyFEiJbxKP5hDAvDEOL5Ty2lJLJOnUu8Q1G0cX6oR93c9RIhRC3gfqCjlLIVoAdGaRWP4j9CCIbNmYPBYsEUEYExLIxmw4ZRr1cvrUMrlZS//mLX119zet8+rUNRfETd3PVd+6FCCDtgwUe1p5WKp/mwYdy9bRtHN20iomZN6nTtihBF7UNRMf1w551snzsXodcjHQ6unz2bFjfcoHVYipepm7teJqVMFUK8ChwCsoFfpJS/aBWP4n8xDRsS07Ch1mGU2uE1a9g+dy72rKz8Y9/eeivNhg0rtGBNCWxqjN/LhBDRuDcXrg/UBMKEEGOKOG+CEGKDEGLDyZMn/R2mohRy7uBBhM7zT0c6neScPatRRIqvCIKzZIOWN3f7AfullCellHZgAdD14pOklDOklB2llB3j48u1b7KieEWN9u1xORwexyxxcYTGxGgUkeIrAjAain8EGi0T/yGgixDCItyDu32B3RrGoyglEtukCdd9+CH6kBD0ZjPhNWowZsmSgLpHoZSMEGAwFP8INFqO8f8lhPga2AQ4gM3ADK3iUZTSuGL0aFqMHEnO2bNY4uJU0g9SQoAxCG/baPpdJaV8Gve+k4oScPRGI2Fq+DGone/xB5sg/EiKoijeIQQYzVpH4X0q8SuKolxKkE7kD8KPpCiK4iUq8SuKolRCQZglg/AjKYqieInAXUUsyKjEryiKcilqqEdRFKWSEUAQzupRe+4qxVo/bRqv167Nq9Wr8/v//uexgbqiBLUgLcgfgCEr/rRj3jyWPvJI/j6/q19+GXN4OFc+/LDGkSmKHwTpUI/q8SuXtf3zz/OTPoDdamXb559rGJGi+Jm+BI8AE4TfZYo3hURFuZcvFhjeMUdGahiRoviR6vErlVGPKVMwhYcj9HoQAmNYGP1efFHrsBTFP9QYv1IZxTZpwl1bt7J19mxcDgetbr6Zqi1bah2WovhHkM7qUYlfKVZ0/fr0euYZrcNQFP8L0qGeIPxIiqIoXqISv6KUzOm9e9m9YAE6o5Erbr6Z8OrVtQ5JUcomSEs2aHpzVwhRRQjxtRDibyHEbiHElVrGo5TfkY0bmd62LcumTOG3xx9nWsuWnDt0qFzX3PfLL8zo1IlpLVuy5rXX1AIyxX+8eHNXCDFICJEkhNgrhHisiNejhBA/CCG2CiF2CiFu99KnKETrHv9bwGIp5Q1CCBNg0TgepZx+efhh7FlZ+c+zbTamtWxJaEwMXR56iM4PPFCqbQoPr1nDvGHD8tcSLH/6aZwOB90mT/Z67IpSiJdu7goh9MB7QH8gBVgvhPheSrmrwGn3ALuklNcKIeKBJCHEXCmlrfwReNKsxy+EiAR6AB8DSCltUsqzWsWjeIf11CnPA1Jiy8zk3KFDLHvySTZ//HGprrdtzhzPBWRZWWz84ANvhKooxfNejz8R2CulTM5L5F8CQy86RwIRwt0zCgdO496P3Ou0HOppAJwEPhFCbBZCfCSECLv4JCHEBCHEBiHEhpMnT/o/ygpKulwVcsijxQ03YLQU/cPNbrWyZdasUl3PYDa7F5AVoDcH4fw6pWIqeeKPO5+n8h4TLrpSLeBwgecpeccKehdoDhwBtgMPSCldXv08ebRM/AagPfC+lLIdkAUUGveSUs6QUnaUUnaMVxtb47TZWDBmDM+bzTwfEsLSRx/1yxfA6b17eb9NG54PCeGdxo05unlzkef1mDKF9nfcgTkyEp3RWOj10q767ThxIqbw8PzkbwgNpff//lf6D6D4jPXUKebfdBPvNG7MF9ddR8aRI1qH5F0lS/xp5/NU3mPGRVcpanzz4j/cgcAWoCbQFng3b2TE67RM/ClAipTyr7znX+P+IlAuY9mUKexesACXw4HLZmP9e++x6cMPfdqm02ZjVs+enNi+HWduLqf37uXTPn3IOVt4ZE6n1zPozTd57Nw57li/HmNYWH7SNoaF0fvZZ0vVdmzjxtyxfj0d7riDVrfcwqjvvqPlyJFe+VxK+bmcTmb37s3f333H6b172bNoER9feSX27GytQ/OO87N6yl+rJwWoU+B5bdw9+4JuBxZIt73AfqBZOaK/JM1u7kopjwkhDgshmkopk4C+wK7i3lfZ7V20CEeBPyq71cqen36iw4SLf1l6z5n9+8lNT/eo1yOl5NjWrdTr2fOS76vepg0TNmxg88yZICVtbrutTKt+45o2ZYga16+Qzuzbx5nkZFw29/1H6XCQffYsxzZvpk7XrhpH5wXem8e/HmgshKgPpAKjgFsuOucQ7jz4pxCiGtAUSPZK6xfRelbPfcDcvBk9ybi/8ZTLCK9ZkxM7d+YnYZ3BQETt2j5tMzQ6Gqfd7nHMZbcTGhNT7HvjmjWj/8sv+yo0zZ07fJgf77qLU0lJ1EpM5Or33iM0OlrrsPxGbzYjnU6PY9LpRG8yaRSRl3lpVo+U0iGEuBdYgvs3wkwp5U4hxF15r08HngNmCSG257U8WUqZVv7WC9M08UsptwAdtYzBH84dOsTBFSswR0bSaPBg9EWMfZfUoDff5OMrr8Rlt4MQmCMi6PnUU16MtrCwqlXpfN99rH//fZy5uejNZpoOHUrVVq182m5FZ8vK4uMuXcg8fhzpdJJ++DCnkpK4Y/16hK5y1D+MSkigQf/+7P/tN+xWK4bQUKq1bk31du20Ds07vLhyV0r5M/DzRcemF/jfR4AB3mnt8rTu8Qe9w6tXM2fgwPw7O3HNmnH7ypXu2SplEN+8Offs3s2en39GZzDQbOhQQqpU8Tjn9L59HPj9d0Kjo2ly7bXl+qI5r/8rr1CvTx+Ob9tGbOPGNBs2rFTz8YNR6rp12DIz83u8TpuNk7t3k56SQlRCgsbR+YcQgpsWLGDtm2+Sum4d1Vq3puukSej0QbLcVZVsUMriu7FjsWdm5j8/uWsXW2bNouOdd5b6WtLlYsMHH7D/t9+IbtCA7k88USjp71+2jC+uvdb9RKcjvpxfNAU1HjyYxoMHl/s6wcJgNiNdnrPtpMsVPMMcJaQzGOg6aZLWYfiGSvxKWWSdOOHx3G61kpGaWqZr/XTPPWz79FPsVit6k4nd337L3du2YQwNzT9n4bhxHgueTu7axbY5c2g/fnzZPoBySbUSE4lr3pwT27fjyMnBaLHQ+JprVG2iYBMkP14KqhwDkRqqfeWVHvPZjRYLCd26lfo6jpwcNn34YX5Sd9psZB0/TvLSpR7nWdPSCr0v89ixMkQeeFwuyc6dJ9i27TgOh0/WvXjQGQzc9scfdHv8cVqOHEmfF15gxBdf+LxdxY/URixKWQyfO5cvhgwhNe+GX89nnqHhgNLfv3E5nQghCq34cNo8y3jUueoqDixf7r75CxhCQkjo3r2s4QcMq9VO//6fsnXrcYQQ1KtXhRUrbiM6OrT4N5eDMTTU5zfXFQ0F6UYsqsfvY5bYWP69Zg2PZ2TwZHY2Vz3ySJmuYwoLo37fvhhCQgAQOh16k4l6vXt7nDfi88+p1amT+3Wz2X1T9jJz7YPFc8/9waZNx8jKspOZaeOff07xn/8s0TosJdCpHr9SHgXH4UvLkZtLzpkzjPz6a36ZNIkDv/9OVEIC10ybhiU21uNcS2ws41atwmmzoTMaK83Mm02bjpGTc6Gelc3mZMuWyjHEpfiQurmraGHL7Nn8eOedCCEIiY7mX0uXMmT69GLfV9lmlrRrV50VKw7mJ3+TSU/btoF9k/V8DabK8uVdIamNWBR/O7lrFz9NnIgzN9d9k/boUT4bNKhCVuXU2lNP9aRdu+qEhRkJDzfRpEksr78+UOuwysRpt7Nw3DimhoTwQlgYy59+Wv2ba0UN9Sj+dnTz5kILYbKOHyc3PZ2QqCiNoqqYLBYjK1eOY9eukzidLlq2rIrBEJj9mmVTprDjyy/zb9yvee01ouvVo+3tqqKJ3wkgROsgvC8w/zIqiaiEhEILhPRGI+aICI0iqth0OkGrVlVp06Z6wCZ9gD0//uhZiC8ri6QfftAwokrMe9U5K5TA/euoBBK6daPVqFEYw8IwR0ZitFgY9tlnlaYOTGUVVq2ax+YzOoOBiJo1NYyoElNDPYq/CSG47qOP6DBhAukpKVRv147o+vW1DkvxsUFvvcXMq67C5XAghMAUEUGPKVO0DqvyCsIsGYQfKfjUSkykVmKi1mEoflLtiiuYuGMH//z4IzqjkRYjRpSoBLbiA0E6q0clfkWpgKISEug0caLWYShqHr9vCCH0wAYgVUo5ROt4FEVR8gVpyQbNEz/wALAb8MmmwopSkeVmZHBs82bMUVFUa91aLdaqaFSP3/uEELWBa4CpwH+0jEVR/C3t77+Z2b07LpsNl9NJ/b59uWnBguDZxCQYBGni13pe4JvAo8Ala+gKISYIITYIITacPHnSf5Epio99c8stZJ86RW56OvasLPb/+ivb5szROiyloCCdzqlZ4hdCDAFOSCk3Xu48KeUMKWVHKWXH+Ph4P0WnKL53JjkZCpRisFutpCUlaRiRUiS1gMurrgKuE0IcAL4E+gghPtMwHp9LT01l7uDBvJGQwNxrriHj6FGtQwpKDoeL1asP88cfB7Ba7VqHc0lVW7VCFBjWMYaFUb1t20uev/6993ilalVeio5m8YMP4nI4Lnmu4iVB2uPXLGQp5ePA4wBCiF7AJCnlGK3i8TVHbi4zr7qK9NRUpMNBxtGjfNKtG/fs3l3pKmn6UlaWjR49ZvHPP6cQAqpUCWHt2vHUrFnxylyM+PxzPunRA+upU7jsdlqPHk3LkSOLPHf3t9+y9NFH83dg2/Thh5jCw+nz/PP+DLnyCdJZPVqP8VcaJ3fuJPv0aWReL006HGSdOMHJ3bs1jiy4vPjiSnbtOklmpo2MDBtHj2YwceJPWodVpKiEBO7bs4c7N27kgf37GfLBB5ec1bNr/nyPvZTtViu7vv7aX6FWXqrH7ztSyt+B3zUOw6cMISFIp9PjmMvpLNcGLUphO3ee9NiQxeGQJCWd0jCiy9MbjcQ2aVLseaGxsQi93uO/oZDoaF+GpoCa1aOUT1zz5iT06IHBYgHcm67X79OHmMaNNY4suHTpUhuL5cLm9maznsTEwC9w1m3yZEKiotCbTAi9HqPFwsDXX9c6rOCnevxKeQghuPn771n/3nsc27KFGu3b02nixEqxYOfIkQwOHjxLo0YxxMeH+bSt//znSlavPszixXvR6QQtWsTz9tuDfdqmP0TWrs3EnTvZ9tlnOHJzaT58OPHNm2sdVqUgA3DWTnFEIO3s07FjR7lhwwatw1AuYd++00yY8APJyWe48so6TJt2DV98sZ3//OcXzGY9druLuXOHc/31zXwey5EjGdhsThISotDpgv/LVSlMCLFRStmxPNfo0F7I1SuLPy8kjHK35U+qx694xdmzOXTp8jGnT2fjckmOHs1k9+40/v77JDk5zvxx99GjF3D8+CTCw307k6kizuJRAo8U4NCXZET8kmtQKyQ1xq94xerVh7HZnLhc7l+QublOdu48gdHo+TtZpxOkpqZrEaKilJoUAqfBUOwj0ARexEqFFBJiKLQhuJR4zLBxH5PUrq3q8SmBwxmEtZNUj1/xiu7dE2jYMIaQEHdfwmIxcsUVVT1uXhsMgvnzbyQsTC1YUwKDROBEX+wj0Kgev+IVRqOeVavG8dprq9mz5zRt2lTjiSd+w2ZzeZxTp06UhlEqSulIBI4ATOzFUYlfuSwpJS6XRF+CG1wWi5H//rcnAElJaTzzzB/YbLb8100mPSdPZvksVkXxNonAFoQ1G9RQj3JJL764ktDQqZjNz3P11XPJzLQV/6Y89etHY7EYKbhMweWStG5dzQeRKopvBOtQj0r8SpG+++5vnntuBbm5TpxOybJl+7nrrh9L/H6TSc/y5WNp0CAaIaBGjXCWLBlDbKzFh1Erivd5K/ELIQYJIZKEEHuFEI9d4pxeQogtQoidQog/vPpBClBDPUqRli7d51HSODfXyfLl+0t1jRYt4tm7935cLqkWUVVS6Skp/DRxIqf37KFWly4MfustzJGBM6vLW2P8eXuLvwf0B1KA9UKI76WUuwqcUwWYBgySUh4SQlQtd8OXoBK/UqTatSMxm/Xk5l4oCla1atnKLaikXznZMjP5qHNnMo8fRzqdnNm/n1N//8241asDplSJe6jHK2kyEdgrpUwGEEJ8CQwFdhU45xZggZTyEICU8oQ3Gi6KGupRinTPPYkkJEQRFmbEYjESHm7igw+u1TosJYCkrF2LLTMzv6KoMzeXY1u2kBlAGxC5b+6ain0Acee3iM17TLjoUrWAwwWep+QdK6gJEC2E+F0IsVEIcauvPpfq8StFiow0s2XLXSxc+DdZWXb6929A3bpVtA5LCSA6o7Hwoj6XK6A2HpJQ0qGetGJq9RT1E+fiQmkGoAPQFwgF1ggh1kop/ylJAKWhWeIXQtQBPgWq4y50MUNK+ZZW8SiFWSxGbr75Cp+343JJTp2yEh0disFQuX6EZmbaSElJp3btSJ/XL/K3Ol27El2/PmlJSThzczFaLDS+5hoscXFah1YKXhvqSQHqFHheGzhSxDlpUsosIEsIsQJoAwRP4gccwMNSyk1CiAhgoxBiacGbHUrw27DhCIMHzyUjIxe9Xse8eTcwZEjxG5MEg++//5ubb16ATidwuSRffDGc667zfeVSf9EbjYxbtYo/X3iBtL//ps5VV9HlgQe0DqtUzk/n9IL1QGMhRH0gFRiFe0y/oIXAu0IIA2ACOgNveKPxi2m55+5R4Gje/84QQuzGPealEn8lYbM5GTjwM06fzs474uSmm77mn3/upVYt78z8SE1N5/XX13LqlJUbbmhRYb5UTp2ycvPNCzxmTt188wIOH36ImJjg2ZXNFB5O3xde0DqMcvFG4pdSOoQQ9wJLAD0wU0q5UwhxV97r06WUu4UQi4FtuEdBPpJS7ih340WoEGP8Qoh6QDvgL20jUfwpJSWd3FzPIm5Go44dO054JfEfP55J27YfcOZMNk6nZP78XbzxxkAmTOhQ7muDe1Xz4cPpCOGeBVWamSrJyWcKDWsZDDr27TtNTMzF9/wUrXixx4+U8mfg54uOTb/o+SvAK15p8DI0H1AVQoQD3wAPSikL1esVQkw4f6f85MmT/g9QyedySR55ZCkWy1RCQ6dy//2L8sswl0XVqmE4HJ51zG02p9eqd86Zs4309FycTneMVqudp55a7pVrW612evacRdOm79Kkybv06zenUCXSy0lIiMJm89yD+fzGMUrFIRHkYi72EWg0TfxCCCPupD9XSrmgqHOklDOklB2llB3j4+P9G6Di4Z13/mLatPVkZzvIyXHw8cebefnlVWW+Xni4iXffvZrQUAMRESYsFiP33ZdIy5beWbeSnW3H6Sz8xeINTzzxG+vXHyEnx/3/i9WrD/PMM7+X+P3VqoXzzjuDCA01EBVlJjTUwNtvD6JatXCvxBdIcs6eJefcOa3DKFKwlmzQclaPAD4Gdksp1a7RAWDhwiSPMWmr1c733yfx2GPdynzN8ePb061bAtu2HadBg2g6dvTexujDhjXnxRdX5cdssRgYM6a1V669dm2KRw8/J8fB2rUppbrG+PEd6N+/IXv3nqZRo5hKN13WkZvLVyNGsO+XXwBoMmQIN8ybh95o1DiyC7w51FORaNnjvwr4F9AnrzbFFiHE1RrGoxSjRo1w9PoL49g6nfBKD7VZszhGjmzp1aQP0KpVVRYvHk2HDjVo2DCa++7rzOuvD/TKtVu0iMdovPDnYzLpadGi9L9I69atQt++lXONxPL//pf9y5bhsttx2e3sXbyYFc8/r3VYhTjQF/sINFrO6llJ0YsalApq6tS+LFq0l5wcB1KC2azn5Zf7aR3WZXXvXpcNGy5eRFl+r7zSn5UrD3HsWCbgvrn7wgt9vd5OMDu4YgWO7Oz8547sbA7+4bO6ZGXixZINFUrwfaIglp6SwqGVKzFHRtJwwAB0ft7rs169KuzefQ8LFuxGSrj++maVdlPz2FgL27ffzfr1RxACOnWqhckUeD2/yzm6aRNpSUnEt2hB9TZtvH79mMaNObpxIy6He8hMZzQS07ix19spj2Ad6lGJP0AcXrOGzwYMACFASqq2asVtf/zh9+Xv1aqFc/fdnfzaZkVlNhvo1i1B6zB84vf//Y/VL7+M0OtxOZ30/t//6DppklfbGPDKKxz8/ff8G7uhsbH0+7//82ob5eWe1RNcK6pBJf6A8d2tt2LLzMx/fnzbNrbMnk2HO+7QMColGJ09eJBVL76IIycn/9iy//6X1v/6F+HVvLeRTnj16tyzezcHV6wAIajXsydGS8Xar0EN9Siayjx+3OO53Wol/fDhS5xd8e3ceYLt20/QsGE0nTqpBUsVSUZqKnqz2SPxG0wmMo8d82riB/fK3sZXV+w5HcE41KP5Ai6lZGp36YKuwDQ3o8VCnauu0jCisps+fT2dOn3IhAk/0KvXbCZPXurxutPpIikpjQMHziKlZMeOE3zzzS527PBeefIzZ7JZty6VI0cyvHbNYBHXrFl+KeWCYho21CAabQXrPH6V+CsgKSVHN2/mwB9/kJvuXsw8fO5cqrVujc5gQGcw0GPKFBoN9M7URF85ezaHkSPnU6fOG3Tv/glJSWmcO5fDgw8uITvbQUaGDavVzjvvrGP3bveq7LQ0K61bT6dDhxm0aPEerVq9T2LiDMaN+57ExA955ZXV5Y7r11+TSUh4g/7959Cw4du89tqacl8zmITGxHDzDz9gjopCbzIREh3N6EWLMIX7Z3HZnp9/5v02bXi7USP+nDoV6XIV/yYfCdbEr4Z6KhiX08mX11/PgeXL0en16IxGbv/zT+KbN2fChg3kZmRgCAnx2SKXfftOs2rVYWJjQxk0qBF6fdn6BlJKBg6cw5Ytx7HZnKSmptO160wWLx6N0ei5s5fJpCc1NYPmzeO5++4f2bPnFHa7+4991y73F0J2tvv8p55azi23tCpzLR+73cnw4fPIzLywEO2pp5YzaFBDr60YDgb1evVi8unT5Jw9S0h0tN92zDq0ahXzb7wRu9UKwJ8vvIB0uejx3//6pf2LnS/ZEGxUj7+C2TZnDgeWL8eelUVuejrZp0+zYPTo/NfNERE+S/q//LKP1q2nc889PzNq1Df07ftpoVo6JZWWZs1P+gBSgsPh4vDhc4WmPTocLlq2dC9+2rTpWH7SL8r5L4myOnnSWugzGQw6/vnnVJmvGayETkdoTIxft0ncPnduftIH972szZ984rf2LxasPf7LJn4hRKQQotDAnhDCO+velULSkpKwZ2VdOCAlZ5KT/dL2rbd+i9VqJzPTRmamjQ0bjjB//s4yXSskxFBo9yWXSxIZGcKSJWOIi7NgMukJDzcxf/6NVKsWzvvvr+fgwbOXva7LJWnSJLbY9q1WO2fP5hQ6Hh9vKVQV02530rRpIG0OEryMFgvoLqpaata2x12pEr8QYiTwN/CNEGKnEKLg5O1Zvg6ssqrRrh3GsAubmgu9nqqtWvml7Qt18d3sdhdHj2Ze4uzLi4gwM358e8LC3L9OQkIMNG4cQ8+edenYsSYnTkziyJH/cPbsZLp3r0vbttOZOPHn/Eqa4P77v+KKqkREmAgJcRdyW7hwFFWqhFyyXSkld931I1FRL1K16iv06PEJ6em5+a8bjXq++5/EuGMAACAASURBVG4U4eEmIiPNhIQYeOGFPmUqt+BvdruTpKQ0jh8v279JIOg0cSLm8PD85G+wWOijYT1/iah0JRueADpIKY8KIRKBOUKIJ/KqaFbKUgs7vvySnV99RVh8PN2eeIIqdet6vY0WN97I/mXL2DJrFjqDgbD4eEZ88YXX2ylKhw412bAhFYfDnXwNBh1du9YhIyOX1NSMUm8P+N57V5OYWIuVKw/RqFEMDzzQGaPR/UcihCA21j1ne/LkpezenVbo/VLCX3+Nx2jUk5ZmJS6ucG/9Yh9/vJk5c7blD+esW5fKvff+zKefDss/p0+f+qSkPMTevaepWTOCGjUq/urj5OQz9Oz5CWfO5OBwuLj77o68/vpAvw7D+EN0gwbcuXkza996C1tmJq3HjKF+796axVOR5/HnbewyV0p5prTvvdwn0uftkoWUcp0QojfwoxCiNoU3CQ56a954g+VTpmC3WhF6PTvnz2fizp1E1Kjh1XaEEAyZPp1ezzxDbno60Q0a+K00w4IFI7n66s/Zvv04BoOO118fSEpKOn36zEav1yGlZP78Gxk8uGTL6oUQ3HZbW267re1lz1u//kiR9xJCQ42EhBgQQlC9eslmlPz++wGPCqK5uU5WrjzEb78l88QTv5GVZWfcuHY89FAXOnTwblE4X7rxxvkcOZKZv//Bhx9uonfv+lx3XVONI/O+6AYNGPxWxdl+uwIP5VQH1gshNgEzgSXy4vHVS7hc9ymj4Ph+3pdAL2Ao0LLssQamP6dOzb/pJJ1O7FlZbP/8c5+1F169OrFNmvi1Hk+NGhFs3nwnGRmPY7U+yfXXN2Xs2O/IznaQmWkjK8vOjTfO9xg68YZWraoWuuFrMAhmzLi21D3aRo1iMJsvXEunE0RHh3LddV+wbt0Rdu48yX//u9wr00L9affukx6b3mRnO9i27fhl3qF4g0Rgw1TsQ5PYpJwCNMZd3v42YI8Q4oWi7ste7HKJ/25AJ4RoUaChDGAQML5cEQeg84WkzpMuV6FjwSI01IhOJ9iz57RH6WFwJ9IDBy5/A7a0Xn11APXrVyE83D2WX6tWBL//fhujR18BuG/UfvvtbmbO3Mz8+TtZtepQoQ1Wzps0qSuNGsUQEWEiIsJEdHQIzZrFYrVe+LeyWu1Mn77Bq5/B1y4u2xwaaqBRoxiNoqk8KvoYf14P/1jewwFEA18LIV6+3Psu2Z2UUm4FEELsEELMAV4GQvL+b0dgjndCDwztbr+djTNm5Pf69WYzzYcNK+Zdga1evSoe8+3BfcPXW1sjnhcTE8q2bXezefNRhBC0b18jfyz/7NkcOnWawZEjmQU2VDHSpk01li0bS0iI53/C4eEmNm6cwPLlB8jNddC9e12ef37F+dp2+U6cyOKVV1bzn/90KfNaBX+aN+8GevWahcslsdtdXH11Y0aO9M8P75S//uLbMWPIOHqUGu3bc8O8eV4f4qyoKvgY//3AWCAN+Ah4REppF0LogD3Ao5d6b0k+UWfgJWA1EAHMxb2JSqXS/9VXCalShZ1ff40lJoYBr71GbJMmWoflU7VrR/LaawOYNOkXTCY9NpuTDz4YQkxMqNfbMpn0dO5cu9Dxl15ayaFD6R5bJlqtdrZsOca7765j0qSuhd5jNhsYNKhR/vO77+7IRx9tIjPTlp/8s7LsPPPM72zfftzjxm9F1bp1NZKTH2Dr1mNUqRJC69bV/HJjN/PYMeb0748tw7124vCaNczp14+7d+wIuhvLl1KBx/jjgOFSyoMFD0opXUKIIZd7oyjuXoAQwgRMBfoD4cAUKeWX5Ys3/9qDgLcAPfCRlPLFy53fsWNHuWFDYP1EDwYHDpwlOfkMjRvHUKeOdzcDd7kkW7ceIzvbQdu21bFYPBenjRr1NfPmFb2WoHr1cIxGHbm5DkJCDPTpU5933rm6yJlHSUlp3H//IpYt258/awncM5fOnp1MWFjwld71ht3ffsvC227LLx0C7l+7/0lJwRJXsdc+CCE2Sik7lucaVTvWkTdueKjY86aJh8vdlj+VpMe/HlgIdAJigQ+EEDdIKW8oT8NCCD3wHu4vlBTcd6e/l1LuKs91Fe+rV68K9ep5f2tAm83JoEGfsW5dKnq9ICLCzOrV/yYh4cKXS9++Dfjhh388Zuqcd373q/M+/3w7K1YcJCUlHZvNRXi4iWnTruZf/2pD06ZxTJzYiTVrUsjIsOW/Rwg8bpoqnkKqVClUK0e6XB5rTYLZ+TH+YFOSwc1/SymfklLapZTHpJRDcX8RlFcisFdKmSyltAFf4p4xpFQS7767jrVrU8jKspOebuPYsUzGj//e45zx49sxfny7/L1+dTrBpUYYbDYXyclnsdnciSoz08a4cd+zdOk+AHr1qkdoqDH/WiEhBvr1a0BERPDVYvGWej17UrNTJ3ei1+kwhoXR47//xRjq/eG+isg9q8dc7CPQFNvjl1IWGluRUnrjxm4toGBB+RTc9xM8CCEmABMAEhJKvtvR+SGsyjIOGYh27DhBdvaF2TZOpyy0kEsIwVtvDeaVVwZgtzs5cyaH0aO/YcWKQyVqw+FwMW/eTvr3b0hUVAjr19/BAw8sZv/+M/TsWY8XX9Run1yr1c7ChX+TlWWnX78GPvlVVV5Cp+Nfv/zCts8+49yhQ9RKTKTRoEFah+U3autF7ysqIxf6zS2lnAHMAPcYf0kuvPLFF/nj2Wdx2e00HTqUYXPmVJoeSiDp2LEm8+btzB/GMRp1tGtXvchzTSY9JpOesDATQ4c2LTLx63RQVAXfgiUeEhKi+Pbbm7zzAcohIyOXjh0/5MiRdFwu95DTr7/eSpcuhW9wa01nMND2ttu0DkMzwZj4tZzHlgLUKfC8NnCkvBfdvWABK557Dkd2Ni6Hgz0//cTi++8v72UVH7jzzg4MHtyIkBADYWFGGjSI5sMPry3B+zpiMl28vgCmTOlBZKTnTdqICBP331/oh+QlSSn59NOtjBu3kKlTV5CVZSv+TWUwbZq7IF1mph2r1U5Wlp0JE37wSVtK2VX0efxlpWWPfz3QWAhRH0gFRgG3lPeie37+2aOsqyMnh32//FLeyyo+oNfrmD//Rg4fTic7207DhjGXrcXjdLr4/PPt7Nlzmief7MGrr67OL+r2xRfDue66Ztx3X2defnkVGzYcoVWreCZP7lai2v0HD57lyJEMZs/eypw527Ba7ZjNeubN28n69XdgNnv3TyU1NaPQGokTJ7IucbailYo8j788NPtEUkpHXpGhJbinc86UUpatBnABETVrojeZcNou9NQsVdUGGxWVEMJjFs+lSCkZPvwrfvstmawsO2FhRm69tQ2TJ19FtWrh+Qu54uIsvPxy/1LF8Oyzf/B//7cSo1HnMeMnN9fJgQNnWbZsf4nqE0kp+fjjzSxfvp9GjWKYNKnrJW8c9+/fgI8/3pw/zGU26+nTp36p4lZ873zJhmCj6ZJFKeXPUsomUsqGUsqp3rhml4ceIrxGDYxhYRhCQzGFh3PNtGneuLSioS1bjuUnfXAvwJo5czMhIYZCq3dLY9Omo7z00ipychweSb+ggjegL+eBBxbzwAOL+fzzHbz00ioSEz8iJ6fo9157bVOefronZrMevV7Qu3d9ZswofphL8S811BMgQqOjuXv7dnYvWIAjO5uGAwcSXV/1pALduXO5hYaBDAYd6em5VKtW9r1g//nnVP70zosJ4W6jR4/iy2/n5DiYNm19/tBTbq57u8lff01myJCiV3g/+uhVPPJIV5xOWWy5aUU7aqgnQJgjImg7dqzWYShe1K5ddfR6XX7NHb1eEBdnoX796HJdt3nzuEIF34xGHdWrh1OnThQffXQtcXGWYq/jcLjypg57TjzLzb38rwUhBAaDmnJcUQXrdE7VzVACQlRUCCtW3EarVu4duRITa7Fixe3k5DhITj7jUcunNNq0qc7//tcbs1lPZKSZyEgzy5eP5dChh1i1ahzNm5dsZ67wcBPduyfkl4Q+/2uhZ896ZYqrJNatS2XEiK8YMuRzfvrpH5+1U5kF6567xdbqqUhUrR6loI8+2sS99/6MwaDDbDbwyy9jyry5yvHjmRw9mknDhtFlXsmbmWnj3nt/ZsWKgyQkRPHBB0N8tpfvxo1H6NFjlkfF0k8/vZ4RI1oU887Kwxu1eiI6NpFtN7xX7HkrxYCgq9WjKBXO33+7i67l5jrJzXWSlWVn0KC5HD8+CZ2u9EMn1aqFl+teAbh7/bNmXV+ua5TU22+v86hfZLXamTr1T5X4vcyFLiBLMhRHDfUoAen89pAFZWTkcuqU9RLvCC5FbVWpis35hreGeoQQg4QQSUKIvUKIxy5zXichhFMIUa5CmJejEr8SkGrXjsyf2lmQL/YKqIgmTuxIaOiFH+wWi5GHHrpSw4iCk7fG+AtUIx4MtABuLri74UXnvYR7fZPPqMSvBKT9+8+iu+i/XoNBFxC7aXnDVVcl8OOPt9CrVz2uvLI2H3wwhLFj22gdVtCR4K15/CWtRnwf8A1wwmsfoghqjF8JSGlpVgwGPY4C+x7n5DiQUlaaiqx9+tRXq319rsQlG+KEEAVnnszIKzB5XrHViIUQtYBhQB/c+5/4jEr8SkDq2bOuR4/faNTRpUvtSpP0Ff8oxTz+tGJm9ZSkGvGbwGQppdPX/x1Xjt/FStBp06Y6n346jJiYEAwGd9JfsED7cstKcJEIcjEV+yiBklQj7gh8KYQ4ANwATBNC+GSamOrxKwFrxIgWavqi4lNerM5ZbDViKWX+uJ0QYhbwo5TyO280fjGV+BVFUS7DGytzL1WNWAhxV97r08vdSClUmsR/fPt2tn36KUKvp924ccQ2KbpwlqIoynnerNUjpfwZ+PmiY0UmfCnlbV5p9BIqReJPXbeO2b17uzdoEYL1773Hv9esoWqrVn5pX7pciIvnHiqKUuFJBE5X4NXiKY4m2UgI8YoQ4m8hxDYhxLdCCJ/uMr1sypQLu3JJiS0rixXPPefLJgHYs2gRL8fG8qzBwPutW3P24EGft6koivdIlyA3x1zsI9Bo1Q1dCrSSUrYG/gEe92VjuenpngekJOfiY152et8+5t9wA9mnT4OUnNy5k88GDPBpm4qieJeUAqdDX+wj0GiS+KWUv0gpz6+8WYt7apPPtB07FqPlQk11o8Xi83r9qX/9hdBf+A9CulycSU4m59w5n7Zbmaxbl0rjxm8TFvYC3bt/wpEjGVqHpAQbSVAm/oowxj8OmHepF4UQE4AJAAkJCWVqoMNdd2HLyuKvt99G6HR0e/xxWo0aVaZrlVRY1apIl2chLaHTYQovXwVIb7Fa7YSEGMpUybIiOHYsk379Ps3fLnHNmsP06/cpO3dOVIu4FK+RUuCwB15iL47PEr8Q4legehEvPSmlXJh3zpOAA5h7qevkLXueAe56/GWMha6TJtF10qSyvL1M6vfpQ73evTnw++9IpxMhBIPeegudXtv/iI4dy2Tw4Lls334cvV7HG28MZOJEn64O94m1a1M8ErzTKUlOPkNampX4+DANI1OCi8DlrAj9Y+/y2SeSUva73OtCiLHAEKCvDKTdYEpI6HTcvHAhST/8QEZqKrUSE6nZUft9GkaM+IodO47jdEqcTiePPLKU1q2r0a1b2X5N+cu5czlYLEaMRvcXZ5UqIYXKELtckvDwEq2iVJSSkUAADuUUR6tZPYOAycB1UsqgLaAudDqaDR1Kp4kTK0TSB9iw4QgOx4WEabc7WbPm8GXe4V27d5+kadN3MRiepV69N9mw4eJV655SU9Np2XIa8fGvEBb2Am+99RcAPXrUpUuXWoSFGRHCXZb4ySe7Expq9MfHUCoLl4AcQ/GPAKNVxO8CZmBp3s/1tVLKu/zVuJQSpKyUc+vj4iweN0FNJj01a0b4pe3cXAe9e8/mxIkspISDB8/Rr9+n7N//ANHRRdfRHz78K5KS0nA63V9WTzzxG+3bV6d797osWjSGuXO3cfDgORITazFoUCO/fA7Fv6TLhTUtjZDoaPRGDb7YHcWfEmg0SfxSSk3+QqWULHvySda89hrS5aL5DTdw/axZGMyBNw+3rGbPvp6hQ7/Mv6nbvn0NbrrJPwvZkpPPkJVl5+KBve3bT9CjR90i37N589H8pA/uXyh//ZVK9+51MRh0jB3b1pchKxo7vm0bcwYMIOfsWYQQXD97Ni1HjvRfAO6C/EEn8H6jlMOWTz7hr7fewmlzzwRJWriQXx97jEFvvKFxZKVz9sAB/v7uO3RGIy1HjiQsPr7E7+3XrwHbt9/NqlWHiI21MHBgQ79tXhIba8Fud3ocs9mcxMVZLvEOiI8PK/QLpVYt//xCUbQlXS7mDBhA1vHj+ce+u+02anToQEzDhn4KgqBM/JVqrGPPokUXVvACjuxs9i1erGFEpXds61bev+IKfn3sMZZOmsS0Fi1IT0kp1TUaNIjmX/9qw9VXN/brjlVVq4bx8MNXEhZmxGzWExZm5Oabr6BFi0t/cX322TDCwoxERJgIDzfRtWsdRo5s6beYFe1knThB7kXrXvRGI8e3bvVfEBKwl+ARYCpVjz+ydm10RiMue96/lBCE16ihbVCltOShh7BlZuY/d9rtrHj+eYZM92txvzKbOrUvffrUZ/v2EzRuHMPVVze+7Pm9e9dn586JrFmTQmxsKH37NgjYtQdK6YTGxBQ65nI4iKxTp4izfUQCuf5rzl8qVeLv/sQT7PrqK/fqWSkRBgOD33lH67BKxZqW5vFcOp1kFvgpHAj69m1A374NSnx+3bpVqFu3bOWc7HYnmzcfQ0pJu3Y1MJkq1tS8yrRVZGnpTSaGzpzJwvHj0RkMSIeDtrffTq1Oflx3EqRDPZUq8YfFxzNx1y6SFi7EabPRaPBgImvV0jqsUmk6dCin9+3DkTdkZbRYaH69TzbpCXjp6bl07/4JyclnEAJq1oxg9ep/ExNT9Awif1q6dB9jxnxLWpqVNm2qsXDhKOrUidI6rAqn1c03U7NTJ45t2UJUQgK1EhP9G4BK/MEhJCqKNrfeqnUYZdbr6afJPnWKrbNnI/R6rnr0UVoH8OfxpSlTlpGUlEZurvuG8v79Z3j44SV88om2X5QHDpzl+uvnYbW6hxy3bTvOgAGfsXv3PZrGVVHFNGpETCONpuqqxK9UBDqDgWumTeOaadO0DqVccnIcJCWlERlppn79aJ+0sWPHifykD2Czudi586RP2rqYw+Fiy5ZjALRpUy1/xTG4y03o9Z7lJvbtO825czlERYX4JT6lhFTiVxTv2LfvNN27f0Jmpg273cWoUS2ZOXOo18e6ExNrsWZNCjk57r9cs1lPp041vdpGUc6dy6FHj1kkJ58BoF69Kvz55+1UqeJO6nFxFi6uUiKEICxMlZuokIIw8Veq6ZxKxTBq1NccP55FRoaNnBwH8+fvYv78XV5v55lnetG5cy1CQw1YLEbatq3OSy/193o7F3vySfcQU2amjcxMG3v2nGLy5F/zX+/Tpz7du9fNn9ZqsRh5442BGAzqz7HCcQE5JXgEGNXjV/wuKemUR4G1rCw7O3ac8Pr8/JAQA8uXj2X//rNIKalfP9ovU0G3bTvuMcSUm+tk+/YLM690OsGPP97Ct9/uJiUlnc6da9Oli0+3pFDKSg31KIp3NGoUw5Ytx/JLN4SFGWnePM4nbQkhaNCg9PcQTpzIYsSIr1i7NoXo6BBmzhzKkCFNSvTeTp1qsn79kfwhppAQPR07eg4x6XSCESNalDouxc+CNPGr35aK33355Q3Ex4cRGWkmNNTAddc19Vu9oJK67rovWLs2BYfDxcmTVkaOnM/u3SW7Mfzcc31o3746FosRi8VImzbV+b//6+vjiBWfOJ/4i3sEGNXjV/yuSZNYkpPvZ+fOk0RFmWnSJLZCLWJyOl2sX3/EYzhKCMGffx6iefPi6yJZLEb+/HMc+/adRkr3Lxy12jiABWBiL45K/IomwsJMJCZWzMVzOp0gNNRAVpbd41hsbMkXful0gsaNY30RnuJPaqhHUSoHIQTvvXcNFosBk8ldTK5162oMHdpM69AUf3MB2SV4BBhNe/xCiEnAK0C8lDKtuPMVxV/Gjm1DixZxrFp1mKpVw7jxxhZqumVlJAFnsWcFHM0SvxCiDtAfOKRVDIpyOZ061aJTp4o5HKX4URAO9WjZ438DeBRYqGEMSgns+uYb9i9bRlSdOiTeey+m8HCtQ1IU/wjSMX5NEr8Q4jogVUq5tbjZHEKICcAEgISEBD9EpxT0x7PPsuqll7BbrejNZrbOns2dmzdjCFE1ZZRKQCX+0hFC/ApUL+KlJ4EngAEluY6UcgYwA6Bjx46ymNM95Kan8+cLL3B63z7q9epFp7vvrpQbrJeVy+lkxfPP529c48zNJT0lhX9++okWI0ZoHJ2i+MH5kg1BxmeJX0rZr6jjQogrgPrA+d5+bWCTECJRSnnMW+07cnL4qHNnzuzfjzM3l70//8yxzZu57qOPvNVE0JNOJ9LpeWdLAvasLG0CUhQtBGGP3+/dXynldillVSllPSllPSAFaO/NpA+wf/ly0lNTcea6902zW61snT0bm0paJaY3majXpw96szn/mBCC+n36aBiVovhRkK7cDdpxD6fNVng1qBC4HAH4r6ShmxYsoPnw4YTXqEH19u257fffiaytCooplYTabN038nr9Xle3Rw/0JhNCp0O6XOjNZup07UpIlNrerjTMERGM+PxzrcNQFG0E6Tz+oO3xh0ZHM/6vv2jQvz+xTZvSeswYbv7+e63DCjqOnBwWjhvHy/HxvN2wIXsWLdI6JEXxHi8O9QghBgkhkoQQe4UQjxXx+mghxLa8x2ohRBsvfYpCNO/x+1J0gwaMWbxY6zCC2g8TJrBr/nwcOTlkp6Xx1Q03MG7lSmq0a6d1aIpSfhKvlGQQQuiB93AvWk0B1gshvpdSFtyBaD/QU0p5RggxGPdsxs7lb72woO3xK/7x93ff4ci5MN/NmZvLXtXrV4LF+aGe4h7FSwT2SimTpZQ24EtgqEdTUq6WUp7Je7oW94xHnwjqHr+3uZxOds2fT3pqKrW7dCHhqqu0DklzRosFW0ZG/nO90ahW9irBo+QLuOKEEBsKPJ+RtwbpvFrA4QLPU7h8b/7fgM96UCrxl5B0ufhs0CBS1qzBZbejMxjo99JLJN57r9ahaWrAa6/x44QJ7pW9JhOWuDja3Hqr1mEpineUPPGnSSk7Xub1okoUFLkgVQjRG3fi71ailstAJf4SSv71V1LXrs1fvOS02Vjy8MN0vOsudIbK+//G1qNHE1WnDv/89BOhMTF0mDCBkCpVtA4roEkpObJ+PVknT1KzQwfCqxe1AF7xi/PTOcsvBahT4Hlt4MjFJwkhWgMfAYOllKe80nIRKm/GKiXrqVNw8boAlwu71Yo5MlKboC5j75Il/Pb449izsmgzdizdHnuM7DNn2DxzJrnnztHk2mup3dk7943q9uhB3R49vHKtyk5KyTejRvHPTz+h0+uRLhejFy0ioZvPOn9KcbwznXM90FgIUR9IBUYBtxQ8QQiRACwA/iWl/McrrV6CSvwlVOfKK5EuV/5zodcT27RphUz6KWvX8tXw4ditVgD+nDqV3IwMts6eTfbp0zhtNta88QYjPv+cZkOHFnM1xZ/++eEH/vnpJ4+yGPNHjuThI4U6h4o/eKlWj5TSIYS4F1gC6IGZUsqdQoi78l6fDjwFxALT8hafOooZPiozNaunhKrUq8fN339PeI0a6IxGanbowJglS7QOq0jbPvssP+mDu1zFxunTyT51yl3CQkocVitLHnxQwyiVopzZv7/Q6vKs48eRsuT1CV0Oh8e/v1IOXly5K6X8WUrZRErZUEo5Ne/Y9Lykj5RyvJQyWkrZNu/hk6QPqsdfKvX79Clzz+v03r2kJSUR06gRcU2bejkyT8bQUNDpoMAvFITAabN5nJebmenTOJTSq9G+PTq9/sLoghDENWtW4s3o/3juOVY8+yxSSmolJnLLjz8SGhPjs3iDnlq5q5TV+unTeb91axaMHs0H7dqx5s03fdpex7vvxhwe7k7+gCE0lC4PPYTBYsk/xxAaSvNhw3wah1J6dbt3p+dTT6EzmTCEhhJZuzajFpZsr6KkH35g1Ysv4nI4kE4nRzZu5LuxY30ccSUQhEXaVI/fx7JOnOCXhx7CkZODI9u9BHDZ44/T8oYbfFbsLLpBAyZs2sTaN97AlpHBFWPG0LB/f6q2bMniBx/EnpVFs2HDGPzOOz5pXymfqyZPptM995B95gwRNWui0+tL9L5Df/7pMcTjstk4vHq1r8KsHNRGLEpZpKemojeZPFa36k0mzh065NMqlzENG3L1u+96HGs+fDjNhw/3WZuK95jCw0u9EC6yTh0MoaH5HQxATQUtryDdiEUN9fhYdIMGHrOBwH3zLbZJE40iUoJVhzvuIL55c/eXRkQEpvBwhs6apXVYgS1I6/GrHr+PhURFcdO33zJv2DD3F4AQ3PjVV1ji4rQOTQkyhpAQ/r1mDXuXLMGWmUndHj2IrFVL67ACXwAm9uKoxF8KTrudjTNmcCopiVqJiVwxenSJZls06NePR9LSyDx2jPDq1TEU2NFKUbxJbzLR9NprtQ4jeHhv5W6FolniF0LcB9yL+/v0Jynlo1rFUhLS5eKzAQNI+esvHNnZGMPCOPTnnwz54IMSvd9gNlOlbl0fR6koilep6Zzek1eEaCjQWkrZEnhVizhKI3XdOlLXr8+/cWbPymLLrFlY09I0jkxRFJ8J0jF+rW7u3g28KKXMBZBSntAojhKzZWYWmlYn9Hq1ebsXpaem8tGVV/J8SAhv1q3LoZUrtQ5JqexcuDdiKe4RYLRK/E2A7kKIv4QQfwghOl3qRCHEBCHEBiHEhpMnT/oxRE81O3VCZzTmF2rTGY1UqVePqDp1yLosKQAABuBJREFUinmnUhJSSub078+R9etx5uZy7tAh5g4eTHpqqtahKZWddzZiqVB8lviFEL8KIXYU8RiK+95CNNAFeAT4SlziLqmUcoaUsqOUsmN8fLyvwi1WSFQU41atolZiIpb4eOr36cPY5csROjUj1huyT5/mzL59SOeFvyKh05Gydq3X2nDk5JD0/ffsnD9fDdEpJSdL8AgwPru5K6Xsd6nXhBB3Awuku/LUOiGEC4gDtOvSl0Bc06aM92IiUi4whYcXKkQmXS6v1ZnJTU/nw06dyDh6FHDvFPbvNWvUegqlUtKqu/od0AdACNEEMAGqC1aJGcxm+jz/PEaLBWEwYAwLo/aVV1KvZ0+vXH/Vyy9z9sABbBkZ2DIyyD5zhh/vussr11aUQKPVdM6ZwEwhxA7ABoyVpak7qwSlqx59lJqdOpG6bh2RtWvTatQorw2lnUlO9qxOKiXnDh3yyrUDxel9+ziTnExc06ZEJSRoHY6iIU0Sf94u82O0aFup2Or37k393r19ct2khQvzi5jpQ0Iq1a5ha958k2VPPIHeZMJps3HN9Om0VXsjl8D5aT3BRd2ZVCqUzTNn8lqNGrwUE8PP996L0+6dZZPtxo+n7e23I/R6dAYDCd26VZrqpGcPHGDZ44/jyM4m99w5HNnZ/HTnnWSfOaN1aAHAizuxVCCqZINSYexdvJhF992X3yvf/MknGMxmBrz2WrmvLYTg6nffZcBrr+Gy20td+TKQnT14EL3Z7FEhVmc0kpGaSmh0tIaRBYLgrMusevxKhbF7wQKPevIOq5Vd33zj1TYMZnOlSvoAsU2a4Lr4l5OURKkSIiUQnD1+lfiVCiMkOhqdwfNHaEhUlEbRBI+IGjUYNmcOBoslv87/Td9+izkiQuvQAkBwJn411KNUGFc+9BBbPvmE3HPncDkcGEJCGOjjbSori+bDh/PIwIFkHDlCZO3a7n2ZlRKQBOPNXZX4lQojvHp1Ju7YwdZPP8VutdLs+uup1rq11mH5jTUtjXOHDxPdoIFPfumYwsKIbdzY69cNbsE5xq8Sv1KhhFWtStdJk7QOw+82fvQRi++7D73JhMvpZOQ339Bo4ECtw1KCtCC/GuNXFI2dPXCAxfffjyMnh9z0dOxZWXw1YgT27OAbYgg8wVmXWSV+RdHYqX/+QW8yFTqeoSqTVgDBeXNXJX6l1KSUbJg+nWmtWvFBu3b8vXCh1iEFtJhGjTzLSQBISUTNmtoEpBSgevyKAsCmGTP45eGHOblzJ8e2bOGbW25h39KlWocVsKIbNKD/Sy9hCAnBHBWF0WJh+BdfYLRYtA5NCdKdWNTNXaXU1k+fXmih1aYPP6Rh//4aRhXYEu+7j2bDh3Pu4EFiGjcmTMO9J5SCgvPmrkr8SqkZzObCx0JCNIgkuETWqkVkrVpah6EUEnhDOcVRQz1KqfV65pkLwxBCYAwLq5RTMJXKIDhv7qoev1JqjQYNYvSiRWz66CP0RiOdH3yQaldcoXVYiuIDaqjHa4QQbYHpQAju31ETpZTrtIhFKZu6PXpUqnr2SmWlVu5608vA/6SUi4QQV+c976VRLIqiKJcQnBuxaJX4JRCZ97+jgCMaxaEoinIZaqjHmx4ElgghXsV9g7nrpU4UQvx/e3fMGkUURmH4PUTE0iIWEiNY5A/oonaCKESbba0EC4OCIOks/QsKoixqkUqw20IIWFoISRpRYXGxMZjGRhAREY6FAy6bjdnEmezonAeG3cv9ZjjTfAyXy8wCsABwNN8JjYg99X8u9VS2q0fSc0mvRxxt4DqwaHsWWAQebXUd2x3bLdutQ9nbHBF7qrxdPZLmJfUk9SXdGjEvSXeL+VeSjpd1F8Mqe+K3fW6rOUlLwM1i+BR4WFWOiIjdK+eJX9IUcA84D6wDK5K6tt8OlF0A5orjFHC/+C3dpPbxfwTOFP/PAu8mlCMi4g9Ke2XDSaBv+73t78AToD1U0waW/MtL4KCkw6XcxpBJrfFfBe5I2gd8o1jD387a2toXSb1Kk41nGviUDEByDEuO+mQo4aPCG8twe3qMwgOSVgfGHdudgfEM8GFgvM7mp/lRNTPAxg4Cj2Uijd/2C+DELk7t2W6VnWenJK1OOkcdMiRHctQ9w9+yPV/SpTTq8ruoKUVe2RARUb11YHZgfITN29jHqSlFGn9ERPVWgDlJxyTtBy4B3aGaLnC52N1zGvhsu/RlHvj33tXT2b5kT9QhRx0yQHIMS47f6pChFmz/kHQDWAamgMe230i6Vsw/AJ4BF4E+8BW4UlUe2ZUsIUVERE1lqSciomHS+CMiGiaNPyKiYdL4IyIaJo0/IqJh0vgjIhomjT8iomF+AhXIdQ7vmticAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(1)\n",
    "train.plot.scatter('x1', 'x2', c='y', colormap='jet')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[-4.53443385e-02 -2.13439733e+00  2.05610903e-03  4.55565195e+00]\n",
      " [-1.43997254e-01 -2.82385790e-02  2.07352090e-02  7.97417342e-04]\n",
      " [ 3.49239266e+00 -2.85503562e-01  1.21968065e+01  8.15122841e-02]\n",
      " [-1.08108308e-01 -1.29980407e-01  1.16874062e-02  1.68949063e-02]\n",
      " [-1.74444870e+00  3.15369281e+00  3.04310127e+00  9.94577834e+00]]\n"
     ]
    }
   ],
   "source": [
    "# 数据扩展\n",
    "X_train = np.hstack((X_train, X_train**2))\n",
    "print(X_train[0:5, :])\n",
    "\n",
    "X_test = np.hstack((X_test, X_test**2))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "config = tf.compat.v1.ConfigProto()\n",
    "config.gpu_options.allow_growth = True\n",
    "sess = tf.compat.v1.Session(config=config)\n",
    "# K.set_session(sess)\n",
    "tf.compat.v1.keras.backend.set_session(sess)\n",
    "\n",
    "file = 'playground2'\n",
    "if os.path.exists(file+'.h5'):\n",
    "    model = load_model(file+'.h5')\n",
    "    # os.rename(file+)\n",
    "else:\n",
    "    model = Sequential()\n",
    "    model.add(Dense(input_dim=4, units=1, activation='sigmoid'))\n",
    "    # model.add(Dense(1, activation='relu'))\n",
    "    # model.add(Dense(2, activation='softmax'))\n",
    "    # model.add(Dropout(0.2))\n",
    "\n",
    "    model.compile(loss='binary_crossentropy',\n",
    "                  optimizer='rmsprop',\n",
    "                  metrics=['accuracy'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0365 - accuracy: 1.0000\n",
      "Epoch 2/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0365 - accuracy: 1.0000\n",
      "Epoch 3/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0365 - accuracy: 1.0000\n",
      "Epoch 4/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0365 - accuracy: 1.0000\n",
      "Epoch 5/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0365 - accuracy: 1.0000\n",
      "Epoch 6/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0365 - accuracy: 1.0000\n",
      "Epoch 7/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0365 - accuracy: 1.0000\n",
      "Epoch 8/1000\n",
      "100/100 [==============================] - 0s 40us/step - loss: 0.0365 - accuracy: 1.0000\n",
      "Epoch 9/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0365 - accuracy: 1.0000\n",
      "Epoch 10/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 11/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 12/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 13/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 14/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 15/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 16/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 17/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 18/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 19/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 20/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 21/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 22/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 23/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 24/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 25/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 26/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0364 - accuracy: 1.0000\n",
      "Epoch 27/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 28/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 29/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 30/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 31/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 32/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 33/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 34/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 35/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 36/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 37/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 38/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 39/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 40/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 41/1000\n",
      "100/100 [==============================] - 0s 40us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 42/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0363 - accuracy: 1.0000\n",
      "Epoch 43/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 44/1000\n",
      "100/100 [==============================] - 0s 40us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 45/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 46/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 47/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 48/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 49/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 50/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 51/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 52/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 53/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 54/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 55/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 56/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 57/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 58/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 59/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0362 - accuracy: 1.0000\n",
      "Epoch 60/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 61/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 62/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 63/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 64/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 65/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 66/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 67/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 68/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 69/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 70/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 71/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 72/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 73/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 74/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 75/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 76/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0361 - accuracy: 1.0000\n",
      "Epoch 77/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 78/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 79/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0360 - accuracy: 1.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 80/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 81/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 82/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 83/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 84/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 85/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 86/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 87/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 88/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 89/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 90/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 91/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 92/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 93/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0360 - accuracy: 1.0000\n",
      "Epoch 94/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 95/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 96/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 97/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 98/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 99/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 100/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 101/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 102/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 103/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 104/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 105/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 106/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 107/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 108/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 109/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 110/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0359 - accuracy: 1.0000\n",
      "Epoch 111/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 112/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 113/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 114/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 115/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 116/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 117/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 118/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 119/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 120/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 121/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 122/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 123/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 124/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 125/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 126/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 127/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0358 - accuracy: 1.0000\n",
      "Epoch 128/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 129/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 130/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 131/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 132/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 133/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 134/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 135/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 136/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 137/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 138/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 139/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 140/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 141/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 142/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 143/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 144/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0357 - accuracy: 1.0000\n",
      "Epoch 145/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 146/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 147/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 148/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 149/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 150/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 151/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 152/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 153/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 154/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 155/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 156/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 157/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 158/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 159/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 160/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 161/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0356 - accuracy: 1.0000\n",
      "Epoch 162/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 163/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 164/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 165/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 166/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 167/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 168/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 169/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 170/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 171/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 172/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 173/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 174/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 175/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 176/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 177/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 178/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 179/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0355 - accuracy: 1.0000\n",
      "Epoch 180/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 181/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 182/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 183/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 184/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 185/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 186/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 187/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 188/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 189/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 190/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 191/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 192/1000\n",
      "100/100 [==============================] - 0s 40us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 193/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 194/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 195/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 196/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0354 - accuracy: 1.0000\n",
      "Epoch 197/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 198/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 199/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 200/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 201/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 202/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 203/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 204/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 205/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 206/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 207/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 208/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 209/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 210/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 211/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 212/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 213/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 214/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0353 - accuracy: 1.0000\n",
      "Epoch 215/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 216/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 217/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 218/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 219/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 220/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 221/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 222/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 223/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 224/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 225/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 226/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 227/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 228/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 229/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 230/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 231/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 232/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0352 - accuracy: 1.0000\n",
      "Epoch 233/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 234/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 235/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 236/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 237/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0351 - accuracy: 1.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 238/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 239/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 240/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 241/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 242/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 243/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 244/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 245/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 246/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 247/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 248/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 249/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0351 - accuracy: 1.0000\n",
      "Epoch 250/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 251/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 252/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 253/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 254/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 255/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 256/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 257/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 258/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 259/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 260/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 261/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 262/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 263/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 264/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 265/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 266/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 267/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0350 - accuracy: 1.0000\n",
      "Epoch 268/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 269/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 270/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 271/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 272/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 273/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 274/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 275/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 276/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 277/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 278/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 279/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 280/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 281/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 282/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 283/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 284/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 285/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0349 - accuracy: 1.0000\n",
      "Epoch 286/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 287/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 288/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 289/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 290/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 291/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 292/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 293/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 294/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 295/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 296/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 297/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 298/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 299/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 300/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 301/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 302/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 303/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0348 - accuracy: 1.0000\n",
      "Epoch 304/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 305/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 306/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 307/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 308/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 309/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 310/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 311/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 312/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 313/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 314/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 315/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 316/1000\n",
      "100/100 [==============================] - 0s 40us/step - loss: 0.0347 - accuracy: 1.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 317/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 318/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 319/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 320/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 321/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0347 - accuracy: 1.0000\n",
      "Epoch 322/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 323/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 324/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 325/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 326/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 327/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 328/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 329/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 330/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 331/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 332/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 333/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 334/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 335/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 336/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 337/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 338/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 339/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0346 - accuracy: 1.0000\n",
      "Epoch 340/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 341/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 342/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 343/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 344/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 345/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 346/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 347/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 348/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 349/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 350/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 351/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 352/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 353/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 354/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 355/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 356/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 357/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 358/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0345 - accuracy: 1.0000\n",
      "Epoch 359/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 360/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 361/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 362/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 363/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 364/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 365/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 366/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 367/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 368/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 369/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 370/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 371/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 372/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 373/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 374/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 375/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 376/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0344 - accuracy: 1.0000\n",
      "Epoch 377/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 378/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 379/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 380/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 381/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 382/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 383/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 384/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 385/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 386/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 387/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 388/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 389/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 390/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 391/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 392/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 393/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 394/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 395/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0343 - accuracy: 1.0000\n",
      "Epoch 396/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 397/1000\n",
      "100/100 [==============================] - 0s 25us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 398/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 399/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 400/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 401/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 402/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 403/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 404/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 405/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 406/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 407/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 408/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 409/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 410/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 411/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 412/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 413/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0342 - accuracy: 1.0000\n",
      "Epoch 414/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 415/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 416/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 417/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 418/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 419/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 420/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 421/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 422/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 423/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 424/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 425/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 426/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 427/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 428/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 429/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 430/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 431/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 432/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0341 - accuracy: 1.0000\n",
      "Epoch 433/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 434/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 435/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 436/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 437/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 438/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 439/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 440/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 441/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 442/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 443/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 444/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 445/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 446/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 447/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 448/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 449/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 450/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 451/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0340 - accuracy: 1.0000\n",
      "Epoch 452/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 453/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 454/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 455/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 456/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 457/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 458/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 459/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 460/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 461/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 462/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 463/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 464/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 465/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 466/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 467/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 468/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 469/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 470/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0339 - accuracy: 1.0000\n",
      "Epoch 471/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 472/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 473/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 474/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 475/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 476/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 477/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 478/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 479/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 480/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 481/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 482/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 483/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 484/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 485/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 486/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 487/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 488/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 489/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0338 - accuracy: 1.0000\n",
      "Epoch 490/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 491/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 492/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 493/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 494/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 495/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 496/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 497/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 498/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 499/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 500/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 501/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 502/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 503/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 504/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 505/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 506/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 507/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 508/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0337 - accuracy: 1.0000\n",
      "Epoch 509/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 510/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 511/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 512/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 513/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 514/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 515/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 516/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 517/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 518/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 519/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 520/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 521/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 522/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 523/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 524/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 525/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 526/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 527/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0336 - accuracy: 1.0000\n",
      "Epoch 528/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 529/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 530/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 531/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 532/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 533/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 534/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 535/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 536/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 537/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 538/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 539/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 540/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 541/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 542/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 543/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 544/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 545/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 546/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0335 - accuracy: 1.0000\n",
      "Epoch 547/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 548/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 549/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 550/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 551/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 552/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 553/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 554/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 555/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 556/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 557/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 558/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 559/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 560/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 561/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 562/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 563/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 564/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 565/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 566/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0334 - accuracy: 1.0000\n",
      "Epoch 567/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 568/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 569/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 570/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 571/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 572/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 573/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 574/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 575/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 576/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 577/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 578/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 579/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 580/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 581/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 582/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 583/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 584/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 585/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0333 - accuracy: 1.0000\n",
      "Epoch 586/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 587/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 588/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 589/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 590/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 591/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 592/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 593/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 594/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 595/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 596/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 597/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 598/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 599/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 600/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 601/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 602/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 603/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 604/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 605/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0332 - accuracy: 1.0000\n",
      "Epoch 606/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 607/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 608/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 609/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 610/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 611/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 612/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 613/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 614/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 615/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 616/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 617/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 618/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 619/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 620/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 621/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 622/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 623/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 624/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 625/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0331 - accuracy: 1.0000\n",
      "Epoch 626/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 627/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 628/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 629/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 630/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 631/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0330 - accuracy: 1.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 632/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 633/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 634/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 635/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 636/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 637/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 638/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 639/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 640/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 641/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 642/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 643/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 644/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 645/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0330 - accuracy: 1.0000\n",
      "Epoch 646/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 647/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 648/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 649/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 650/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 651/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 652/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 653/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 654/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 655/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 656/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 657/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 658/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 659/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 660/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 661/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 662/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 663/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 664/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 665/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0329 - accuracy: 1.0000\n",
      "Epoch 666/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 667/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 668/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 669/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 670/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 671/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 672/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 673/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 674/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 675/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 676/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 677/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 678/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 679/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 680/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 681/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 682/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 683/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 684/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 685/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0328 - accuracy: 1.0000\n",
      "Epoch 686/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 687/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 688/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 689/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 690/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 691/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 692/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 693/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 694/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 695/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 696/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 697/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 698/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 699/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 700/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 701/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 702/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 703/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 704/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 705/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0327 - accuracy: 1.0000\n",
      "Epoch 706/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 707/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 708/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 709/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 710/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 711/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 712/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 713/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 714/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 715/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 716/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 717/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 718/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 719/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 720/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 721/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 722/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 723/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 724/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 725/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0326 - accuracy: 1.0000\n",
      "Epoch 726/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 727/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 728/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 729/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 730/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 731/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 732/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 733/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 734/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 735/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 736/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 737/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 738/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 739/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 740/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 741/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 742/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 743/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 744/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 745/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 746/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0325 - accuracy: 1.0000\n",
      "Epoch 747/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 748/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 749/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 750/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 751/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 752/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 753/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 754/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 755/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 756/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 757/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 758/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 759/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 760/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 761/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 762/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 763/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 764/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 765/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 766/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0324 - accuracy: 1.0000\n",
      "Epoch 767/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 768/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 769/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 770/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 771/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 772/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 773/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 774/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 775/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 776/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 777/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 778/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 779/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 780/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 781/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 782/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 783/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 784/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 785/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 786/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 787/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0323 - accuracy: 1.0000\n",
      "Epoch 788/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 789/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0322 - accuracy: 1.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 790/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 791/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 792/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 793/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 794/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 795/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 796/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 797/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 798/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 799/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 800/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 801/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 802/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 803/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 804/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 805/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 806/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 807/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 808/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0322 - accuracy: 1.0000\n",
      "Epoch 809/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 810/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 811/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 812/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 813/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 814/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 815/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 816/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 817/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 818/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 819/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 820/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 821/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 822/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 823/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 824/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 825/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 826/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 827/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 828/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0321 - accuracy: 1.0000\n",
      "Epoch 829/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 830/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 831/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 832/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 833/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 834/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 835/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 836/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 837/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 838/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 839/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 840/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 841/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 842/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 843/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 844/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 845/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 846/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 847/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 848/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 849/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0320 - accuracy: 1.0000\n",
      "Epoch 850/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 851/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 852/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 853/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 854/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 855/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 856/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 857/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 858/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 859/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 860/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 861/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 862/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 863/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 864/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 865/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 866/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 867/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 868/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0319 - accuracy: 1.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 869/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 870/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0319 - accuracy: 1.0000\n",
      "Epoch 871/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 872/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 873/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 874/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 875/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 876/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 877/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 878/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 879/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 880/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 881/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 882/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 883/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 884/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 885/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 886/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 887/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 888/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 889/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 890/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 891/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 892/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0318 - accuracy: 1.0000\n",
      "Epoch 893/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 894/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 895/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 896/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 897/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 898/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 899/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 900/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 901/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 902/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 903/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 904/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 905/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 906/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 907/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 908/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 909/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 910/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 911/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 912/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 913/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0317 - accuracy: 1.0000\n",
      "Epoch 914/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 915/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 916/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 917/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 918/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 919/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 920/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 921/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 922/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 923/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 924/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 925/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 926/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 927/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 928/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 929/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 930/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 931/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 932/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 933/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 934/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 935/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0316 - accuracy: 1.0000\n",
      "Epoch 936/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 937/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 938/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 939/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 940/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 941/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 942/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 943/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 944/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 945/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 946/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 947/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0315 - accuracy: 1.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 948/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 949/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 950/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 951/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 952/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 953/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 954/1000\n",
      "100/100 [==============================] - 0s 26us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 955/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 956/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0315 - accuracy: 1.0000\n",
      "Epoch 957/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 958/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 959/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 960/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 961/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 962/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 963/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 964/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 965/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 966/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 967/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 968/1000\n",
      "100/100 [==============================] - 0s 22us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 969/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 970/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 971/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 972/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 973/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 974/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 975/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 976/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 977/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 978/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0314 - accuracy: 1.0000\n",
      "Epoch 979/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 980/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 981/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 982/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 983/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 984/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 985/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 986/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 987/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 988/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 989/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 990/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 991/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 992/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 993/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 994/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 995/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 996/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 997/1000\n",
      "100/100 [==============================] - 0s 30us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 998/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 999/1000\n",
      "100/100 [==============================] - 0s 20us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Epoch 1000/1000\n",
      "100/100 [==============================] - 0s 10us/step - loss: 0.0313 - accuracy: 1.0000\n",
      "Weights= [[-0.19830792]\n",
      " [-0.04820945]\n",
      " [ 0.36633083]\n",
      " [ 0.36301562]] \n",
      "biases= [-8.798193]\n",
      "100/100 [==============================] - 0s 50us/step\n",
      "loss:0.0619 accuracy:0.9700\n"
     ]
    }
   ],
   "source": [
    "# model.fit(X_train, Y_train, batch_size=n, epochs=1000, verbose=1, validation_data=(X_test, Y_test))\n",
    "model.fit(X_train, Y_train, batch_size=len(Y_train), epochs=1000, verbose=1)\n",
    "W, b = model.layers[0].get_weights()\n",
    "print('Weights=', W, '\\nbiases=', b)\n",
    "\n",
    "loss, accuracy = model.evaluate(X_test, Y_test, verbose=1)\n",
    "print('loss:%.4f accuracy:%.4f' % (loss, accuracy))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {},
   "outputs": [],
   "source": [
    "Y_train_hat = model.predict_classes(X_train)\n",
    "Y_test_hat = model.predict_classes(X_test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 64,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n",
      " 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n",
      " 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n",
      " 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n",
      " 0. 0. 0. 0.]\n",
      "[0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0. 0. 0.\n",
      " 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n",
      " 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n",
      " 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.\n",
      " 0. 0. 0. 0.]\n"
     ]
    }
   ],
   "source": [
    "# print(type(Y_train_hat))\n",
    "# print(Y_train_hat.shape)\n",
    "# print(Y_train.shape)\n",
    "print(Y_train_hat[:, 0] - Y_train)  # 两者的维数不一样\n",
    "\n",
    "print(Y_test_hat[:, 0] - Y_test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x19a1d7ebf08>"
      ]
     },
     "execution_count": 66,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "train.plot.scatter('x1', 'x2', c='y', colormap='jet')\n",
    "\n",
    "train_hat = pd.DataFrame({'x1': X_train[:, 0], 'x2': X_train[:, 1], 'y': Y_train_hat[:, 0]})\n",
    "train_hat.plot.scatter('x1', 'x2', c='y', colormap='jet')\n",
    "\n",
    "train_error = pd.DataFrame({'x1': X_train[:, 0], 'x2': X_train[:, 1], 'y': (Y_train_hat[:, 0]-Y_train)})\n",
    "train_error.plot.scatter('x1', 'x2', c='y', colormap='jet')\n",
    "\n",
    "# test.plot.scatter('x1', 'x2', c='y', colormap='jet')\n",
    "# plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [],
   "source": [
    "model.save(file+'.h5', overwrite=True)  # 保存模型\n",
    "model.save(file+'-'+time.strftime(\"%Y%m%d-%H%M%S\", time.localtime())+'.h5')  # 再保存一遍，加上时间"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
